deploy: Add an assertion that deployment directory exists
authorColin Walters <walters@verbum.org>
Thu, 3 Apr 2014 22:29:07 +0000 (18:29 -0400)
committerColin Walters <walters@verbum.org>
Thu, 3 Apr 2014 22:29:07 +0000 (18:29 -0400)
I may be seeing something going wrong in rpm-ostree, just adding this
assertion for my own sanity.

src/libostree/ostree-sysroot-deploy.c

index 1aac2cd0c43c012376809f7be6a216e658527f04..87346b7c582cc039a797e5b8f6b230ed7ef6c3fe 100644 (file)
@@ -1133,9 +1133,19 @@ ostree_sysroot_write_deployments (OstreeSysroot     *self,
   for (i = 0; i < new_deployments->len; i++)
     {
       OstreeDeployment *deployment = new_deployments->pdata[i];
+      gs_unref_object GFile *deployment_root = NULL;
       
       if (deployment == self->booted_deployment)
         found_booted_deployment = TRUE;
+      
+      deployment_root = ostree_sysroot_get_deployment_directory (self, deployment);
+      if (!g_file_query_exists (deployment_root, NULL))
+        {
+          g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+                       "Unable to find expected deployment root: %s",
+                       gs_file_get_path_cached (deployment_root));
+          goto out;
+        }
 
       ostree_deployment_set_index (deployment, i);
     }